//
//  Busi.h
//  CMYH
//
//  Created by Loki on 15-5-25.
//  Copyright (c) 2015年 Loki. All rights reserved.
//

#import <Foundation/Foundation.h>
#import "XML.h"


@protocol BusiDelegate <NSObject>
@optional
/**
 * 网络请求回调函数（返回头部信息）
 * @param        res，返回数据
 * @param        headers，HTTP头部信息
 * @param        reqID，请求ID
 * @result
 */
- (void)requestFinished:(NSObject *)res
            withHeaders:(NSDictionary *)headers
                  andID:(NSString *)reqID;


/**
 * 网络请求异常回调函数
 * @param        exception，异常信息
 * @param        reqID，请求ID
 * @result
 */
- (void)requestException:(NSException *)exception withID:(NSString *)reqID;


@end


@interface Busi : NSObject
@property (nonatomic, weak) id<BusiDelegate>        delegete;           // 请求代理
@property (nonatomic, strong) NSString *            method;             // 方法
@property (nonatomic, strong) NSString *            requestID;          // 请求ID（默认为方法名）
@property (nonatomic, assign) NSTimeInterval        timeout;             // 超时时长（默认15秒）


/**
 * 添加请求参数
 * @param        param，请求参数
 * @param        key，参数名
 * @result
 */
- (void)addParam:(NSString *)param forKey:(NSString *)key;


/**
 * 发起请求
 *  默认:
 *      已接口名method作为requestID
 *      缓存时间 默认 0
 *      默认不强制刷新
 *      默认为 非静默模式 即需要显示进度条
 * @result
 */
- (void)query;


@end
